package com.example.certificate.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.certificate.dto.ProductDTO;
import com.example.certificate.dto.ProductDescDTO;
import com.example.certificate.dto.SearchDTO;
import com.example.certificate.dto.SelProductDTO;
import com.example.certificate.entity.ProductInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.certificate.entity.User;
import com.example.certificate.execption.BusinessException;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author hao
 * @since 2022-03-10 12:42:47
 */
public interface ProductInfoService extends IService<ProductInfo> {
    /**
     *添加商品
     * @param dto
     * @param user
     */
    void addProduct(ProductDTO dto, User user) throws BusinessException;


    /**
     * 分页查询业务分类
     * @param dto
     * @return
     */
    Page<ProductInfo> selProduct(SelProductDTO dto);

    /**
     * 查询商品详情
     * @param descDTO
     * @return
     */
    ProductInfo proDetail(ProductDescDTO descDTO);

    /**
     * 模糊查询商品
     * @param dto
     * @return
     */
    Page<ProductInfo> searchProduct(SearchDTO dto);

    /**
     * 查询近日优品数据
     */
    Page<ProductInfo> todayProduct(Page<ProductInfo> page);
}
